Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Creative thinking



  Functional Programming Is Hard, That's Why It's Good

Odds are, you don’t use a functional programming language every day. You probably aren’t getting paid to write code in Scala, Haskell, Erlang, F#, or a Lisp Dialect. The vast majority of people in the industry use OO languages like Python, Ruby, Java or C#–and they’re happy with them. Sure, they might occasionally use a “functional feature” like “blocks” now and then, but they aren’t writing functional code.And yet, for years we’v...

   Functional Programming,Hard,Difficult,Reason to learn,Good     2011-10-18 02:55:38

  Top 10 Reasons to Use HTML5 Right Now

So you’re still not using HTML5, huh? I guess you probably have your reasons; it’s not fully adopted yet, it doesn’t work in IE, you don’t like users, you’re out of touch or you are just passionately in love with writing strict XHTML code. HTML5 is the revolution that the web needed and the fact is, it is the future whether you like it or not — suck it up and deal. HTML5 isn’t hard to use or understand and even though it’s not fully a...

   HTML5,Accessibility,Cross browser compatibility     2011-12-08 02:52:38

  Asynchronous UIs - the future of web user interfaces

It's an interesting time to be working on the frontend now. We have new technologies such as HTML5, CSS3, Canvas and WebGL; all of which greatly increase the possibilities for web application development. The world is our oyster!However, there's also another trend I've noticed. Web developers are still stuck in the request/response mindset. I call it the 'click and wait' approach - where every UI interaction results in a delay before another interaction can be performed. That's the process they'...

   AJAX,Asynchronous UI,AUI,User interface     2011-11-18 08:55:08

  Scala feels like EJB 2, and other thoughts

At Devoxx last week I used the phrase "Scala feels like EJB 2 to me". What was on my mind?ScalaFor a number of years on this blog I've been mentioning a desire to write a post about Scala. Writing such a post is not easy, because anyone who has been paying attention to anti-Scala blog posts will know that writing one is a sure fire way of getting flamed. The Scala community is not tolerant of dissent.But ultimately, I felt that it was important for me to speak out and express my opinions. As I s...

   Scala,Module,EJB,Concurrency,Feature     2011-11-22 08:29:44

  Eleven Equations True Computer Science Geeks Should (at Least Pretend to) Know

This idea is a complete rip off an article that appeared in Wired a little while ago and it got me thinking what would my list for Computer Science look like?  Plus I thought it might be a fun post and unlike the Wired list this one goes to eleven.  So here they are in no particular order: Binomial Coefficient The Binomial Coefficient equation generates Pascal’s Triangle and gives you the coefficients for the Binomial Theorem these ideas are often attributed to Pa...

   Algorithms,Computer science,Euler formula,Fermat     2011-11-29 08:42:50

  Why, oh WHY, do those #?@! nutheads use vi?

Yes, even if you can't believe it, there are a lot fans of the 30-years-old vi editor (or its more recent, just-15-years-old, best clone & great improvement, vim). No, they are not dinosaurs who don't want to catch up with the times - the community of vi users just keeps growing: myself, I only got started 2 years ago (after over 10 years of being a professional programmer). Friends of mine are converting today. Heck, most vi users were not even born when...

   Linux,Vi,Vim,Advantage,History     2012-02-05 07:21:17

  The Death Of The Spec

Earlier today, my colleague Matt Burns wrote a post noting that most tablet makers may be largely failing because they’ve sold their soul to Android and are now just in the middle of a spec war, which no one can win. I’m gonna go one step further in that line of thinking: the spec is dead.There have been a few key stories from the past couple of weeks that highlight this new reality. Barnes & Noble unveiled the new Nook Tablet. Consumer Reports looked at the...

   Specification,Android,Platform,Software design     2011-11-15 08:20:22

  Currying in Python

What is Currying? Currying is like a kind of incremental binding of function arguments. Let’s define a simple function which takes 5 arguments: 1def f(a, b, c, d, e):2    print(a, b, c, d, e) In a language where currying is supported, f is a function which takes one argument (a) and returns a function which takes 4 arguments. This means that f(5) is the following function: 1def g(b, c, d, e):2    f(5, b, c, d, e) We could emulate this behavior the...

   Python,Curring,Binding,Implement     2012-03-19 12:59:10

  The Great Tech War Of 2012

From left: The late Apple cofounder Steve Jobs, Facebook CEO Mark Zuckerberg, Google CEO Larry Page, and Amazon CEO Jeff Bezos. | Photos courtesy of David Paul Morris/Getty Images (Jobs); Justin Sullivan/Getty Images (Zuckerberg); Chip East/Reuters (Page); Mario Tama/Getty Images (Bezos).Gilbert Wong, the mayor of Cupertino, California, calls his city council to order. "As you know, Cupertino is very famous for Apple Computer, and we're very honored to have Mr. Steve Jobs come here tonight ...

   2012,Tech war,Facebook,Apple,Google,Amazon,Tablet,Cloud,Analysis     2011-10-17 11:06:25

  Why Software Projects are Terrible and How Not To Fix Them

If you are a good developer and you’ve worked in bad organizations, you often have ideas to improve the process.  The famous Joel Test is a collection of 12 such ideas.  Some of these ideas have universal acceptance within the software industry (say, using source control), while others might be slightly more controversial (TDD).  But for any particular methodology, whether it is universally accepted or only “mostly” accepted, there are a multitude of o...

   Software,Development,Debug,Design     2011-11-21 10:27:05